package com.zsrt.day20170504.pm.synchronizedtest.consumerproducer;
/**
*@author jzh
*@创建时间 2017年5月4日下午5:56:15
*类说明：
*/
public class Kuang {
	
	
	int index=0;
	MT[] mts=new MT[10];
	
	public synchronized void push(MT mt){
		/*notify();
		if(index<10){
			mts[index]=mt;
			index++;
		}else{
			try {
				wait();
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}*/
		
		while(index>=10){
			try {
				wait();
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}
		this.notify();
		mts[index]=mt;
		index++;
	}
	
	public synchronized MT pop(){
		while(index<=0){
			try {
				wait();
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
		}
		this.notify();
		//MT mt1=mts[index];
		//index先--，再返回，因为栈顶指针总是指向栈顶元素的上一个
		index--;
		return mts[index];
		
	}
	
	

}
